package com.example.hongyu.avtt.network.api;



import com.example.hongyu.avtt.model.Html;
import com.example.hongyu.avtt.model.Picture;
import com.example.hongyu.avtt.model.Txt;
import com.example.hongyu.avtt.model.Vedio;
import com.example.hongyu.avtt.model.Web;
import com.example.hongyu.avtt.model.entity.BaseResponse;
import com.example.hongyu.avtt.model.response.UserLoginResp;
import com.example.hongyu.avtt.model.response.WebSite;
import com.example.hongyu.avtt.network.UrlDefine;

import java.util.List;

import io.reactivex.Observable;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;

public interface AppInfoApi {

    @POST(UrlDefine.LOGIN)
    Observable<BaseResponse<UserLoginResp>> submit(@Query("loginName") String userName, @Query("password") String userPass);

    @POST(UrlDefine.LOGIN)
    Observable<BaseResponse<UserLoginResp>> userLogin(@Query("userName") String userName, @Query("userPass") String userPass, @Query("userType") int userType);

    @POST(UrlDefine.HTML_LIST)
    Observable<BaseResponse<List<Html>>> htmlList(@Query("typeName")String tyName,@Query("query")String query,@Query("userName") String userName, @Query("userPass") String userPass, @Query("userType") int userType);

    @POST(UrlDefine.VEDIO_WEBSITE_LIST)
    Observable<BaseResponse<List<WebSite>>> vedioWebSiteList();

    @POST(UrlDefine.VEDIO_PLAY_TIMES_UPDATE)
    Observable<BaseResponse<Object>> upDatePalytimes(@Query("website")String website,@Query("id") int pageNum);
    @POST(UrlDefine.VEDIO_TYPE_LIST)
    Observable<BaseResponse<List<Vedio>>> vedioTypeSiteList(@Query("webSite")String webSite);
    @POST(UrlDefine.VEDIO_LIST)
    Observable<BaseResponse<List<Vedio>>> vedioList(@Query("query")String query,@Query("webSite")String webSite,@Query("typeName")String tyName,@Query("pageNum") int pageNum, @Query("pageSize")int pageSize);
    @POST(UrlDefine.PICTURE_LIST)
    Observable<BaseResponse<List<Picture>>> pictureList(@Query("typeName")String tyName,@Query("query")String query,@Query("pageNum") int pageNum, @Query("pageSize")int pageSize);

    @POST(UrlDefine.TXT_LIST)
    Observable<BaseResponse<List<Txt>>>txtList(@Query("typeName")String tyName,@Query("query")String query,@Query("pageNum") int pageNum, @Query("pageSize")int pageSize);
    @POST(UrlDefine.TXT_FIND)
    Observable<BaseResponse<Txt>>fiondTxt(@Query("id") int id);
    @POST(UrlDefine.WEB_LIST)
    Observable<BaseResponse<List<Web>>> webList(@Query("typeName")String tyName, @Query("query")String query, @Query("pageNum") int pageNum, @Query("pageSize")int pageSize);



}
